/*
 * $Id: arp.h,v 1.4 2005-12-26 05:27:28 bacon Exp $
 */

#ifndef _XP_NET_ARP_H_
#define _XP_NET_ARP_H_

#include <xp/types.h>
#include <xp/macros.h>
#include <xp/net/sck.h>
#include <xp/net/ether.h>

typedef struct xp_arp_t xp_arp_t;

struct xp_arp_t
{
	xp_sck_t sck;
	xp_bool_t __dynamic;
};

#ifdef __cplusplus
extern "C" {
#endif

xp_arp_t* xp_arp_open (xp_arp_t* arp);
int xp_arp_close (xp_arp_t* arp);
int xp_arp_ping4 (xp_arp_t* arp, const xp_char_t* ifce,
	xp_uint32_t* ip, xp_byte_t mac[XP_ETHER_LEN]);


#ifdef __cplusplus
}
#endif

#endif
